package com.cmc.cloud.cmclink.doc.vo.special.approvepermissionvo;

import java.util.List;
import java.util.Set;

import javax.validation.constraints.NotBlank;

import org.hibernate.validator.constraints.Length;

import com.cmc.cloud.cmclink.doc.rpcservice.vo.VesselNameBaseVo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;

/**
 * 用户船舶审批权限配置更新 Request VO
 * 
 * @author codegen
 */
@Schema(description = "管理后台 - 用户船舶审批权限配置更新 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class ApprovePermissionConfigUpdateReqVO extends VesselNameBaseVo {
    @Schema(description = "更新列表")
    List<VesselNameBaseVo> vesselNameBaseVos;

    @Schema(description = "批量更新船名列表")
    Set<String> vesselCodes;

    @Schema(description = "用户编码", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotBlank(message = "用户编码不能为空")
    @Length(max = 30, message = "{approvepermission.usercode.max.length}")
    @Length(min = 4, message = "{approvepermission.usercode.min.length}")
    String userCode;
}
